﻿using System.ComponentModel.DataAnnotations;
using MediatR;
using ProduceBasicData.Api.DTO;
using ProduceBasicData.ErrorCode;

namespace ProduceBasicData.Api.Application.Command.Incomings
{
    /// <summary>
    /// 来料表信息展示命令
    /// </summary>
    public class GetIncomingCommand:IRequest<ApiPaging<IncomingDto>>
    {
        /// <summary>
        /// 当前页
        /// </summary>
        public int Index { get; set; } = 1;

        /// <summary>
        /// 页容量
        /// </summary>
        public int Size { get; set; } = 5;

        /// <summary>
        /// 编码
        /// </summary>
        public string? IncomingCode { get; set; }

        /// <summary>
        /// 供应商外键
        /// </summary>
        public int? SupplierId { get; set; }

        /// <summary>
        /// 供应商名称
        /// </summary>
        public string? SupplierName { get; set; }

        /// <summary>
        /// 物料外键
        /// </summary>
        public int? GroupId { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        public string? MaterialName { get; set; }

        /// <summary>
        /// 批次号
        /// </summary>
        public string? Batch { get; set; }

        /// <summary>
        /// 生效日期
        /// </summary>
        public string? EffectiveDate { get; set; }

        /// <summary>
        /// 失效日期
        /// </summary>
        public string? ExpirationDate { get; set; }

        /// <summary>
        /// 来料数量
        /// </summary>
        public int? NUmbner { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        [StringLength(50)]
        public string? CreateName { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public string? CreateTime { get; set; }

        /// <summary>
        /// 更新人
        /// </summary>
        [StringLength(50)]
        public string? UpdateName { get; set; }

        /// <summary>
        /// 更新时间
        /// </summary>
        public string? UpdateTime { get; set; }
    }
}
